﻿using Mt.Site.Core.WorkFlows.Process.Models;
using System;
using System.Collections.Generic;
using System.Threading.Tasks;

namespace Mt.Site.Core.WorkFlows.Process.Stores
{
    /// <summary>
    /// 记录工作流转日志
    /// </summary>
    public interface IWokFlowLogStore
    {
        Task<List<WorkFlowLogDto>> GetLogDataAsync(Guid paperId);

        Task AddLogAsync(string message, string fromOperator, string nextOperator, Guid paperId, Guid? processId);

        Task AddLogWithParallelAsync(string message, string fromOperator, string nextOperator, Guid paperId, Guid? processId);

        Task RemoveLogAsync(Guid paperId, Guid processId);

        Task RemoveLogWithParallelAsync(Guid paperId, Guid processId);
    }
}
